package com.activenetwork.util;

import java.util.List;

import org.openqa.selenium.WebDriver;
import org.testng.ITestResult;

import com.activenetwork.util.verification.gson.FailurePoint;
import com.google.common.collect.ImmutableMap;

public class EnvContext {
	// WebDriver instance thread local
	public static final ThreadLocal<WebDriver> webDriverTL = new ThreadLocal<WebDriver>();
	
	// The look-up for page field xpath
	// 1st string is the page object name
	// 2nd string is the page field name
	// 3rd string is the page field identifier method, can be "css" or "xpath"
	// 4rd string is the corresponding identifier value
	public static ImmutableMap<String, ImmutableMap<String, ImmutableMap<String,String>>> xpathLookup;
	
	// User thread local
	public static final ThreadLocal<String[]> userTL = new ThreadLocal<String[]>();
	
	// ITestResult thread local
	public static final ThreadLocal<ITestResult> testResultTL=new ThreadLocal<ITestResult>();
	
	// Verification failure point in the script
	public static final ThreadLocal<List<FailurePoint>> failurePointTL =  new ThreadLocal<List<FailurePoint>>();
}
